home *** CD-ROM | disk | FTP | other *** search
/ PC go! 1997 January / pcgo 1997-01.iso / demo / univengl / daboeuw.mst < prev    next >
Encoding:
Text File  |  1996-06-10  |  15.3 KB  |  620 lines

  1. '**************************************************************************
  2. '*          Install Toolkit DataBook
  3. '**************************************************************************
  4.  
  5. ''DEBUG?
  6. ''     '$DEFINE DEBUG  ''Define for script development/debugging
  7.  
  8. '$INCLUDE 'setupapi.inc'
  9. '$INCLUDE 'msdetect.inc'
  10. '$INCLUDE 'msvalid.inc'
  11.  
  12.  
  13. ''Dialog ID's       =
  14. CONST WELCOME       =  100
  15. CONST ASKQUIT       =  200
  16. CONST DESTPATH      =  300
  17. CONST IDOPATH       =  370
  18. CONST AMIPATH       =  380
  19. CONST WORDPATH      =  390
  20. CONST EXITQUIT      =  600
  21. CONST EXITSUCCESS   =  700
  22. CONST OPTIONS       =  800
  23. CONST APPHELP       =  900
  24. CONST CHECK         = 2500
  25. CONST TOOBIG        = 6300
  26. CONST TOOBIG2       = 6350
  27. CONST BADPATH       = 6400
  28. CONST BADVER        = 6500
  29. CONST NETDRV        = 6600
  30. CONST CDALREADYUSED = 7100
  31. CONST CNALREADYUSED = 7150
  32. CONST CDGETREG      = 7200
  33. CONST CDBADREG      = 7300
  34. CONST CDGETNAMEORG  = 7500
  35. CONST CDBADNAME     = 7700
  36. CONST CDNOTWRITABLE = 7900
  37.  
  38.  
  39. ''Bitmap ID (to appear in the background of the frame window)
  40. CONST LOGO = 1
  41.  
  42.  
  43. GLOBAL APPDEST$
  44. GLOBAL WORDMDEST$
  45. GLOBAL AMIMDEST$
  46. GLOBAL WINDRIVE$
  47.  
  48. GLOBAL COST$
  49. GLOBAL recalc%
  50. GLOBAL cmd%
  51.  
  52.  
  53. ''CustInst list symbol names
  54. GLOBAL APPNEEDS$
  55. GLOBAL COSTDRV$
  56. GLOBAL CHECKWORD$
  57. GLOBAL CHECKAMI$
  58. GLOBAL CHECKLEX$
  59.  
  60. DECLARE SUB RecalcFiles
  61. DECLARE SUB Install
  62. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  63.  
  64.  
  65. INIT:
  66.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  67.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  68.  
  69.     SetBitmap CUIDLL$, LOGO
  70.     SetTitle "INSTALL: DataBook Universalw÷rterbuch Englisch"
  71.     SetAbout "Install Version 3.1 CD","⌐ 1992-1996 Electronic Publishing Partners"
  72.  
  73.     ''Path and name of the specific .INF file
  74.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  75.     IF szInf$ = "" THEN
  76.         szInf$ = GetSymbolValue("STF_CWDDIR") + "GDLEXX.INF"
  77.     END IF
  78.     ReadInfFile szInf$
  79.  
  80.     ''Disk cost list symbols
  81.     APPNEEDS$   = "AppNeeds"
  82.     COSTDRV$    = ""
  83.     COST$ = ""
  84.     CHECKLEX$  = "CheckLex"
  85.     AddListItem CHECKLEX$, "ON"
  86.     AddListItem CHECKLEX$, "OFF"
  87.     CHECKWORD$ = "CheckWord"
  88.     AddListItem CHECKWORD$, "?"
  89.     CHECKAMI$ = "CheckAmi"
  90.     AddListItem CHECKAMI$, "?"
  91.  
  92.     WINDRIVE$ = MID$(GetWindowsDir, 1, 1)
  93.     cmd%=0
  94.  
  95.     APPDEST$ = WINDRIVE$ + ":\LEXIKA"
  96.  
  97.     WORDMDEST$ = GetIniKeyString(MakePath(GetWindowsDir,"WINWORD6.INI"),"Microsoft Word","USER-DOT-PATH")
  98.     if  WORDMDEST$ = "" THEN
  99.         WORDMDEST$ = GetIniKeyString("WIN.INI","Microsoft Word 2.0","programdir")
  100.     ENDIF
  101.     if  WORDMDEST$ = "" THEN
  102.         WORDMDEST$ = GetIniKeyString("WIN.INI","Microsoft Word 6.0","programdir")
  103.     ENDIF
  104.     if  WORDMDEST$ = "" THEN
  105.         WORDMDEST$ = GetIniKeyString("WIN.INI","winword","programdir")
  106.     ENDIF
  107.     if  WORDMDEST$ = "" THEN
  108.         WORDMDEST$ = APPDEST$
  109.     ENDIF
  110.     IF IsDirWritable(WORDMDEST$) = 0 THEN
  111.         WORDMDEST$ = APPDEST$
  112.     ENDIF
  113.  
  114.     AMIMDEST$ =  GetIniKeyString(MakePath(GetWindowsDir,"AMIPRO.INI"),"AmiPro","macrodir")
  115.     if  AMIMDEST$ = "" THEN
  116.         AMIMDEST$ = APPDEST$
  117.     ENDIF
  118.     IF IsDirWritable(AMIMDEST$) = 0 THEN
  119.         AMIMDEST$ = APPDEST$
  120.     ENDIF
  121.  
  122. RecalcFiles
  123. first%=1  ''first Recalc - BOOL
  124.  
  125.  
  126. WELCOME:
  127.     SetSymbolValue "DlgTitle", "DataBook Universalw÷rterbuch Englisch"
  128.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  129.     IF sz$ = "CONTINUE" THEN
  130.         IF (GetWindowsMajorVersion() < 3) THEN
  131.             n%=0
  132.         ELSEIF (GetWindowsMajorVersion() > 3) THEN
  133.             n%=1
  134.         ELSEIF (GetWindowsMinorVersion() < 10) THEN
  135.             n%=0
  136.         ELSE
  137.             n%=1
  138.         END IF
  139.         IF (n%=0) THEN
  140.             UIPop(1)
  141.             GOTO BADVER
  142.         END IF
  143.  
  144.         SrcDir$ = GetSymbolValue("STF_SRCDIR")
  145.         UIPop 1
  146.     ELSE
  147.         GOSUB ASKQUIT
  148.         GOTO WELCOME
  149.     END IF
  150.  
  151.  
  152. GETPATH:
  153.     SetSymbolValue "EditTextIn", APPDEST$
  154.     SetSymbolValue "EditFocus", "END"
  155.     opt$=GetSymbolValue(CHECKLEX$)
  156.     SetSymbolValue "CheckItemsIn", opt$
  157. GETPATHL1:
  158.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FCheckDlgProc", APPHELP, HELPPROC$)
  159.     newopt$ = GetSymbolValue ("CheckItemsOut")
  160.     IF sz$ = "CONTINUE" THEN
  161.         IF newopt$ <> opt$ THEN
  162.             SetSymbolValue CHECKLEX$, newopt$
  163.             recalc%=1
  164.         END IF
  165.         olddest$ = APPDEST$
  166.         APPDEST$ = GetSymbolValue("EditTextOut")
  167.         cmd%=IsCmd(APPDEST$)
  168.         if (cmd% <> 0) then
  169.             APPDEST$ = CutCmd(APPDEST$)
  170.         endif
  171.         IF IsDirWritable(APPDEST$) = 0 THEN
  172.             GOSUB BADPATH
  173.             recalc% = 1
  174.             APPDEST$ = olddest$
  175.             GOTO GETPATHL1
  176.         END IF
  177.         IF DriveOk = 0 AND cmd%<>1 AND IsDriveOk(MID$(APPDEST$, 1, 1) ) = 1 THEN
  178.             GOSUB NETDRV
  179.             recalc% = 1
  180.             APPDEST$ = olddest$
  181.             GOTO GETPATHL1
  182.         ENDIF
  183.  
  184.         ''Recalc if path changed.
  185.         IF (olddest$ <> APPDEST$) OR (recalc%=1) THEN
  186.             if  WORDMDEST$ = olddest$ THEN
  187.                 WORDMDEST$ = APPDEST$
  188.             ENDIF
  189.             if  AMIMDEST$ = olddest$ THEN
  190.                 AMIMDEST$ = APPDEST$
  191.             ENDIF
  192.             RecalcFiles
  193.         END IF
  194.  
  195.         IF COSTDRV$ = "YES" THEN
  196.             GOSUB TOOBIG
  197.             recalc% = 1
  198.             GOTO GETPATHL1
  199.         ELSEIF COSTDRV$ <> "" THEN
  200.             GOSUB TOOBIG2
  201.             recalc% = 1
  202.             GOTO GETPATHL1
  203.         END IF
  204.         UIPop 1
  205.     ELSEIF sz$ = "REACTIVATE" THEN
  206.         RecalcFiles
  207.         GOTO GETPATHL1
  208.     ELSEIF sz$ = "BACK" THEN
  209.         APPDEST$ = GetSymbolValue("EditTextOut")
  210.         UIPop 1
  211.         GOTO WELCOME
  212.     ELSE
  213.         GOSUB ASKQUIT
  214.         GOTO GETPATH
  215.     END IF
  216.  
  217.  
  218. WORDPATH:
  219.     IF GetListItem (CHECKWORD$,1) = "?" THEN
  220.         ReplaceListItem CHECKWORD$,1,"ON"
  221.     ENDIF
  222.     SetSymbolValue "EditTextIn", WORDMDEST$
  223.     SetSymbolValue "EditFocus", "END"
  224.     opt$=GetSymbolValue (CHECKWORD$)
  225.     SetSymbolValue "CheckItemsIn", opt$
  226. WORDPATH1:
  227.     sz$ = UIStartDlg(CUIDLL$, WORDPATH, "FCheckDlgProc", APPHELP, HELPPROC$)
  228.     newopt$ = GetSymbolValue("CheckItemsOut")
  229.     IF sz$ = "CONTINUE" THEN
  230.         IF newopt$ <> opt$ THEN
  231.             SetSymbolValue  CHECKWORD$, newopt$
  232.         END IF
  233.         olddest$ = WORDMDEST$
  234.         WORDMDEST$ = GetSymbolValue("EditTextOut")
  235.  
  236.         IF MID$(WORDMDEST$, LEN(WORDMDEST$), 1) <> "\" THEN
  237.             WORDMDEST$=WORDMDEST$ + "\"
  238.         END IF
  239.  
  240.         IF IsDirWritable(WORDMDEST$) = 0 THEN
  241.             GOSUB BADPATH
  242.             recalc% = 1
  243.             GOTO WORDPATH1
  244.         END IF
  245.  
  246.         ''Recalc if path changed.
  247.         IF (newopt$ <> opt$) OR (olddest$ <> WORDMDEST$) OR (recalc%=1) THEN
  248.             RecalcFiles
  249.         END IF
  250.         opt$=newopt$
  251.  
  252.         IF COSTDRV$ = "YES" THEN
  253.             GOSUB TOOBIG
  254.             recalc% = 1
  255.             GOTO WORDPATH1
  256.         ELSEIF COSTDRV$ <> "" THEN
  257.             GOSUB TOOBIG2
  258.             recalc% = 1
  259.             GOTO WORDPATH1
  260.         END IF
  261.         UIPop 1
  262.     ELSEIF sz$ = "REACTIVATE" THEN
  263.         RecalcFiles
  264.         GOTO WORDPATH1
  265.     ELSEIF sz$ = "BACK" THEN
  266.         WORDMDEST$ = GetSymbolValue("EditTextOut")
  267.         UIPop 1
  268.         GOTO GETPATH
  269.     ELSE
  270.         GOSUB ASKQUIT
  271.         GOTO WORDPATH
  272.     END IF
  273.  
  274.  
  275. AMIPATH:
  276.     IF (GetListItem (CHECKAMI$,1) = "?") THEN
  277.         ReplaceListItem CHECKAMI$,1,"ON"
  278.     ENDIF
  279.     SetSymbolValue "EditTextIn", AMIMDEST$
  280.     SetSymbolValue "EditFocus", "END"
  281.     opt$=GetSymbolValue (CHECKAMI$)
  282.     SetSymbolValue "CheckItemsIn", opt$
  283. AMIPATH1:
  284.     sz$ = UIStartDlg(CUIDLL$, AMIPATH, "FCheckDlgProc", APPHELP, HELPPROC$)
  285.     newopt$ = GetSymbolValue("CheckItemsOut")
  286.     IF sz$ = "CONTINUE" THEN
  287.         IF newopt$ <> opt$ THEN
  288.             SetSymbolValue  CHECKAMI$, newopt$
  289.         END IF
  290.         olddest$ = AMIMDEST$
  291.         AMIMDEST$ = GetSymbolValue("EditTextOut")
  292.  
  293.         IF MID$(AMIMDEST$, LEN(AMIMDEST$), 1) <> "\" THEN
  294.             AMIMDEST$=AMIMDEST$ + "\"
  295.         END IF
  296.  
  297.         IF IsDirWritable(AMIMDEST$) = 0 THEN
  298.             GOSUB BADPATH
  299.             recalc% = 1
  300.             GOTO AMIPATH1
  301.         END IF
  302.         ''Recalc if path changed.
  303.         IF (newopt$ <> opt$) OR (olddest$ <> AMIMDEST$) OR (recalc%=1) THEN
  304.             RecalcFiles
  305.         END IF
  306.         opt$=newopt$
  307.  
  308.         IF COSTDRV$ = "YES" THEN
  309.             GOSUB TOOBIG
  310.             recalc% = 1
  311.             GOTO AMIPATH1
  312.         ELSEIF COSTDRV$ <> "" THEN
  313.             GOSUB TOOBIG2
  314.             recalc% = 1
  315.             GOTO AMIPATH1
  316.         END IF
  317.         UIPop 1
  318.     ELSEIF sz$ = "REACTIVATE" THEN
  319.         RecalcFiles
  320.         GOTO AMIPATH1
  321.     ELSEIF sz$ = "BACK" THEN
  322.         AMIMDEST$ = GetSymbolValue("EditTextOut")
  323.         UIPop 1
  324.         GOTO WORDPATH
  325.     ELSE
  326.         GOSUB ASKQUIT
  327.         GOTO AMIPATH
  328.     END IF
  329.  
  330.  
  331.  
  332. Install
  333.  
  334. ''--------------------------------------------------------------------------
  335.  
  336.  
  337. QUIT:
  338.     ON ERROR GOTO ERRQUIT
  339.  
  340.     IF ERR = 0 THEN
  341.         dlg% = EXITSUCCESS
  342.         proc$ = "FExitDlgProc"
  343.     ''ELSEIF ERR = STFQUIT THEN
  344.     ''   dlg% = EXITQUIT
  345.     ''   proc$= "FInfo0DlgProc"
  346.     ELSE
  347.         dlg% = EXITQUIT
  348.         proc$= "FInfo0DlgProc"
  349.     END IF
  350. QUITL1:
  351.     sz$ = UIStartDlg(CUIDLL$, dlg%, proc$, 0, "")
  352.     IF sz$ = "REACTIVATE" THEN
  353.         GOTO QUITL1
  354.     END IF
  355.     UIPop 1
  356.  
  357.     END
  358.  
  359. ERRQUIT:
  360.     i% = DoMsgBox("Quelldateien fehlerhaft! Benachrichtigen Sie Ihren ProdukthΣndler.", "DataBook Universalw÷rterbuch Englisch", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  361.     END
  362.  
  363. CDALREADYUSED:
  364. CDALREADYUSED1:
  365.     sz$ = UIStartDlg(CUIDLL$, CDALREADYUSED, "FTextDlgProc", 0, "")
  366.     IF sz$ = "REACTIVATE" THEN
  367.         GOTO CDALREADYUSED1
  368.     END IF
  369.     UIPop 1
  370.     END
  371.  
  372. BADVER:
  373.     sz$ = UIStartDlg(CUIDLL$, BADVER, "FInfo0DlgProc", 0, "")
  374.     IF sz$ = "REACTIVATE" THEN
  375.         GOTO BADVER
  376.     END IF
  377.     UIPop 1
  378.     END
  379.  
  380. BADPATH:
  381.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  382.     IF sz$ = "REACTIVATE" THEN
  383.         GOTO BADPATH
  384.     END IF
  385.     UIPop 1
  386.     RETURN
  387.  
  388.  
  389. NETDRV:
  390.     SetSymbolValue "DlgTitle", ""
  391.     sz$ = UIStartDlg(CUIDLL$, NETDRV, "FInfo0DlgProc", 0, "")
  392.     IF sz$ = "REACTIVATE" THEN
  393.         GOTO NETDRV
  394.     END IF
  395.     UIPop 1
  396.     SetSymbolValue "DlgTitle", "DataBook Universalw÷rterbuch Englisch"
  397.     RETURN
  398.  
  399.  
  400. CDBADNAME:
  401.     sz$ = UIStartDlg(CUIDLL$, CDBADNAME, "FInfo0DlgProc", 0, "")
  402.     IF sz$ = "REACTIVATE" THEN
  403.         GOTO CDBADNAME
  404.     END IF
  405.     UIPop 1
  406.     RETURN
  407.  
  408.  
  409. NOTWRITABLE:
  410.     sz$ = UIStartDlg(CUIDLL$, CDNOTWRITABLE, "FInfo0DlgProc", 0, "")
  411.     IF sz$ = "REACTIVATE" THEN
  412.         GOTO NOTWRITABLE
  413.     END IF
  414.     UIPop 1
  415.     RETURN
  416.  
  417.  
  418.  
  419. TOOBIG:
  420.     sz$ = UIStartDlg(CUIDLL$, TOOBIG, "FInfo0DlgProc", 0, "")
  421.     IF sz$ = "REACTIVATE" THEN
  422.         RecalcFiles
  423.         GOTO TOOBIG
  424.     END IF
  425.     UIPop 1
  426.     RETURN
  427.  
  428. TOOBIG2:
  429.     SetSymbolValue "DlgTitle", ""
  430.     SetSymbolValue "OldName", COST$
  431.     SetSymbolValue "OldOrg",  COSTDRV$
  432. TOOBIG21:
  433.     sz$ = UIStartDlg(CUIDLL$, TOOBIG2, "FTextDlgProc", 0, "")
  434.     IF sz$ = "REACTIVATE" THEN
  435.         RecalcFiles
  436.         GOTO TOOBIG21
  437.     END IF
  438.     UIPop 1
  439.     ''xxx
  440.     SetSymbolValue "DlgTitle", "DataBook Universalw÷rterbuch Englisch"
  441.     RETURN
  442.  
  443.  
  444. ASKQUIT:
  445.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  446.  
  447.     IF sz$ = "EXIT" THEN
  448.         UIPopAll
  449.         ERROR STFQUIT
  450.     ELSEIF sz$ = "REACTIVATE" THEN
  451.         GOTO ASKQUIT
  452.     ELSE
  453.         UIPop 1
  454.     END IF
  455.     RETURN
  456.  
  457.  
  458.  
  459. '**
  460. '** Purpose:
  461. '**     Appends a file name to the end of a directory path,
  462. '**     inserting a backslash character as needed.
  463. '** Arguments:
  464. '**     szDir$  - full directory path (with optional ending "\")
  465. '**     szFile$ - filename to append to directory
  466. '** Returns:
  467. '**     Resulting fully qualified path name.
  468. '*************************************************************************
  469. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  470.     IF szDir$ = "" THEN
  471.         MakePath = szFile$
  472.     ELSEIF szFile$ = "" THEN
  473.         MakePath = szDir$
  474.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  475.         MakePath = szDir$ + szFile$
  476.     ELSE
  477.         MakePath = szDir$ + "\" + szFile$
  478.     END IF
  479. END FUNCTION
  480.  
  481.  
  482. '**
  483. '** Purpose:
  484. '**     Recalculates disk space for the given option files and sets
  485. '**     the status info symbol "StatusItemsText".
  486. '** Arguments:
  487. '**     ftype% - type of files to add, one of the following:
  488. '**             APPFILES, OPTFILES1, OPTFILES2
  489. '** Returns:
  490. '**     none.
  491. '*************************************************************************
  492. SUB RecalcFiles   STATIC
  493.     CursorSave% = ShowWaitCursor()
  494.  
  495.     ClearCopyList
  496.  
  497.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  498.     AddSectionFilesToCopyList "Prog", SrcDir$, APPDEST$
  499.     IF GetListItem(CHECKLEX$, 2) = "ON" THEN
  500.         AddSectionFilesToCopyList "Lexika", SrcDir$, APPDEST$
  501.     END IF
  502.  
  503.     IF GetListItem(CHECKAMI$, 1) = "ON" THEN
  504.         AddSectionFilesToCopyList "AmiPro", SrcDir$, AMIMDEST$
  505.     ENDIF
  506.     IF GetListItem(CHECKWORD$, 1) = "ON" THEN
  507.         AddSectionFilesToCopyList "Word", SrcDir$,   WORDMDEST$
  508.     ENDIF
  509.  
  510.     ListSym$ = APPNEEDS$
  511.     StillNeed& = GetCopyListCost("1024", ListSym$, "")
  512.  
  513.     lcost&=0
  514.     IF StillNeed& > 0 THEN
  515.         appdrv$=MID$(APPDEST$, 1, 1)
  516.         ndrive% = ASC(ucase$(appdrv$)) - ASC("A") + 1
  517.         lcost& = VAL(GetListItem(ListSym$, ndrive%))
  518.         IF  lcost& > 0  THEN
  519.             COST$ = STR$(lcost& / 1024) + " KB"
  520.             COSTDRV$ = appdrv$+":"
  521.             lcost&=-1
  522.         END IF
  523.  
  524.         AmiProDrive$=MID$(AMIMDEST$, 1, 1)
  525.         IF (lcost&<> -1) AND (AmiProDrive$ <> MID$(APPDEST$, 1, 1))  THEN
  526.             ndrive% = ASC(ucase$(AmiProDrive$)) - ASC("A") + 1
  527.             lcost& = VAL(GetListItem(ListSym$, ndrive%))
  528.         END IF
  529.         IF  lcost& > 0  THEN
  530.             COST$ = STR$(lcost& / 1024) + " KB"
  531.             COSTDRV$ = AmiProDrive$+":"
  532.             lcost&=-1
  533.         END IF
  534.  
  535.         WordDrive$=MID$(WORDMDEST$, 1, 1)
  536.         IF (lcost&<> -1) AND (WordDrive$ <> MID$(APPDEST$, 1, 1))  THEN
  537.             ndrive% = ASC(ucase$(WordDrive$)) - ASC("A") + 1
  538.             lcost& = VAL(GetListItem(ListSym$, ndrive%))
  539.         END IF
  540.         IF  lcost& > 0  THEN
  541.             COST$ = STR$(lcost& / 1024) + " KB"
  542.             COSTDRV$ = WordDrive$+":"
  543.             lcost&=-1
  544.         END IF
  545.         IF (lcost& <> -1) THEN
  546.             COSTDRV$ = "YES"
  547.         END IF
  548.     ELSE
  549.         COSTDRV$ = ""
  550.     END IF
  551.  
  552.     RestoreCursor CursorSave%
  553.     ListSym$ = ""
  554.     recalc% = 0
  555. END SUB
  556.  
  557.  
  558. '**
  559. '** Purpose:
  560. '**     Builds the copy list and performs all installation operations.
  561. '** Arguments:
  562. '**     none.
  563. '** Returns:
  564. '**     none.
  565. '*************************************************************************
  566. SUB Install STATIC
  567.  
  568.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  569.     CreateDir APPDEST$, cmoNone
  570.     CreateDir AMIMDEST$, cmoNone
  571.     CreateDir WORDMDEST$, cmoNone
  572.  
  573.     OpenLogFile MakePath(APPDEST$, "INSTALL.STF"), 0
  574.     WriteToLogFile ""
  575.     WriteToLogFile "  Gdlexx: '" + APPDEST$ + "'"
  576.     WriteToLogFile "  AmiPro:  " +GetSymbolValue (CHECKAMI$)+" '"+ AMIMDEST$ + "'"
  577.     WriteToLogFile "  Word:    " +GetSymbolValue (CHECKWORD$)+" '" + WORDMDEST$ + "'"
  578.     WriteToLogFile ""
  579.  
  580.     i% = SetSizeCheckMode(scmOnIgnore)
  581.     CopyFilesInCopyList
  582.  
  583.     IF MID$(APPDEST$, LEN(APPDEST$), 1) <> "\" THEN
  584.         APPDEST$=APPDEST$ + "\"
  585.     END IF
  586.  
  587.     CreateProgmanGroup "DataBook", "", cmoNone
  588.     ShowProgmanGroup   "DataBook", 1,  cmoNone
  589.     CreateProgmanItem  "DataBook", "Universalw÷rterbuch Englisch", MakePath(APPDEST$,"DATABOOK.EXE UEnglisch"), "", cmoOverwrite
  590.  
  591.     ini$=MakePath(APPDEST$, "databook.cfg")
  592.     IF GetListItem(CHECKLEX$, 2) = "ON" THEN
  593.         CreateIniKeyValue ini$,"DATABOOK","Current",LCASE$(MakePath(APPDEST$, "de_uws.lex")),cmoOverwrite
  594.         CreateIniKeyValue ini$,"DATABOOK","Dic1",LCASE$(MakePath(APPDEST$, "de_uws.lex")),cmoOverwrite
  595.         CreateIniKeyValue ini$,"DATABOOK","Dic2",LCASE$(MakePath(APPDEST$, "ed_uws.lex")),cmoOverwrite
  596.         CreateIniKeyValue ini$,"UEnglisch","Current",LCASE$(MakePath(APPDEST$, "de_uws.lex")),cmoOverwrite
  597.         CreateIniKeyValue ini$,"UEnglisch","Dic1",LCASE$(MakePath(APPDEST$, "de_uws.lex")),cmoOverwrite
  598.         CreateIniKeyValue ini$,"UEnglisch","Dic2",LCASE$(MakePath(APPDEST$, "ed_uws.lex")),cmoOverwrite
  599.     ELSE
  600.         CreateIniKeyValue ini$,"DATABOOK","Current",LCASE$(MakePath(SrcDir$, "de_uws.lex")),cmoOverwrite
  601.         CreateIniKeyValue ini$,"DATABOOK","Dic1",LCASE$(MakePath(SrcDir$, "de_uws.lex")),cmoOverwrite
  602.         CreateIniKeyValue ini$,"DATABOOK","Dic2",LCASE$(MakePath(SrcDir$, "ed_uws.lex")),cmoOverwrite
  603.         CreateIniKeyValue ini$,"UEnglisch","Current",LCASE$(MakePath(SrcDir$, "de_uws.lex")),cmoOverwrite
  604.         CreateIniKeyValue ini$,"UEnglisch","Dic1",LCASE$(MakePath(SrcDir$, "de_uws.lex")),cmoOverwrite
  605.         CreateIniKeyValue ini$,"UEnglisch","Dic2",LCASE$(MakePath(SrcDir$, "ed_uws.lex")),cmoOverwrite
  606.     END IF
  607.  
  608.     IF DoesDirExist(SrcDir$+"8BPR196S\") = 1 THEN
  609.         CreateProgmanItem  "DataBook", "VerlagsprΣsentation", MakePath(SrcDir$+"8BPR196S\","rossi.exe"), "", cmoOverwrite
  610.     ENDIF
  611.  
  612.  
  613.     CloseLogFile
  614.     IF ERR = 0 THEN
  615.         RemoveFile MakePath(APPDEST$, "INSTALL.STF"), cmoNone
  616.     END IF
  617.  
  618. END SUB
  619.  
  620.